From d05aa5ad74eb89c9ae6d0b2d285e5116d8bbcd3a Mon Sep 17 00:00:00 2001 From: "awilliam@xenbuild.aw" Date: Thu, 18 May 2006 14:05:30 -0600 Subject: [PATCH] [IA64] panic when ioremap hypercall fails. This can occur when dom0 vp model xenlinux is used on P=M model xen/ia64. Signed-off-by: Isaku Yamahata --- linux-2.6-xen-sparse/include/asm-ia64/hypercall.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/linux-2.6-xen-sparse/include/asm-ia64/hypercall.h b/linux-2.6-xen-sparse/include/asm-ia64/hypercall.h index 368081e523..c2b779bfea 100644 --- a/linux-2.6-xen-sparse/include/asm-ia64/hypercall.h +++ b/linux-2.6-xen-sparse/include/asm-ia64/hypercall.h @@ -318,6 +318,7 @@ static inline void exit_idle(void) {} #define do_IRQ(irq, regs) __do_IRQ((irq), (regs)) #ifdef CONFIG_XEN_IA64_DOM0_VP +#include #include #define _hypercall_imm1(type, name, imm, a1) \ @@ -419,6 +420,10 @@ HYPERVISOR_ioremap(unsigned long ioaddr, unsigned long size) unsigned long ret = ioaddr; if (running_on_xen) { ret = __HYPERVISOR_ioremap(ioaddr, size); + if (unlikely(IS_ERR_VALUE(ret))) + panic("hypercall %s failed with %ld. " + "Please check Xen and Linux config mismatch\n", + __func__, -ret); } return ret; } -- 2.30.2